classdef CODE < double
    enumeration
        CODE_NONE(0)  % obs code: none or unknown
        CODE_L1C (1)  % obs code: L1C/A,G1C/A,E1C (GPS,GLO,GAL,QZS,SBS)
        CODE_L1P (2)  % obs code: L1P,G1P,B1P (GPS,GLO,BDS)
        CODE_L1W (3)  % obs code: L1 Z-track (GPS)
        CODE_L1Y (4)  % obs code: L1Y        (GPS)
        CODE_L1M (5)  % obs code: L1M        (GPS)
        CODE_L1N (6)  % obs code: L1codeless,B1codeless (GPS,BDS)
        CODE_L1S (7)  % obs code: L1C(D)     (GPS,QZS)
        CODE_L1L (8)  % obs code: L1C(P)     (GPS,QZS)
        CODE_L1E (9)  % (not used)
        CODE_L1A (10) % obs code: E1A,B1A    (GAL,BDS)
        CODE_L1B (11) % obs code: E1B        (GAL)
        CODE_L1X (12) % obs code: E1B+C,L1C(D+P),B1D+P (GAL,QZS,BDS)
        CODE_L1Z (13) % obs code: E1A+B+C,L1S (GAL,QZS)
        CODE_L2C (14) % obs code: L2C/A,G1C/A (GPS,GLO)
        CODE_L2D (15) % obs code: L2 L1C/A-(P2-P1) (GPS)
        CODE_L2S (16) % obs code: L2C(M)     (GPS,QZS)
        CODE_L2L (17) % obs code: L2C(L)     (GPS,QZS)
        CODE_L2X (18) % obs code: L2C(M+L),B1_2I+Q (GPS,QZS,BDS)
        CODE_L2P (19) % obs code: L2P,G2P    (GPS,GLO)
        CODE_L2W (20) % obs code: L2 Z-track (GPS)
        CODE_L2Y (21) % obs code: L2Y        (GPS)
        CODE_L2M (22) % obs code: L2M        (GPS)
        CODE_L2N (23) % obs code: L2codeless (GPS)
        CODE_L5I (24) % obs code: L5I,E5aI   (GPS,GAL,QZS,SBS)
        CODE_L5Q (25) % obs code: L5Q,E5aQ   (GPS,GAL,QZS,SBS)
        CODE_L5X (26) % obs code: L5I+Q,E5aI+Q,L5B+C,B2aD+P (GPS,GAL,QZS,IRN,SBS,BDS)
        CODE_L7I (27) % obs code: E5bI,B2bI  (GAL,BDS)
        CODE_L7Q (28) % obs code: E5bQ,B2bQ  (GAL,BDS)
        CODE_L7X (29) % obs code: E5bI+Q,B2bI+Q (GAL,BDS)
        CODE_L6A (30) % obs code: E6A,B3A    (GAL,BDS)
        CODE_L6B (31) % obs code: E6B        (GAL)
        CODE_L6C (32) % obs code: E6C        (GAL)
        CODE_L6X (33) % obs code: E6B+C,LEXS+L,B3I+Q (GAL,QZS,BDS)
        CODE_L6Z (34) % obs code: E6A+B+C,L6D+E (GAL,QZS)
        CODE_L6S (35) % obs code: L6S        (QZS)
        CODE_L6L (36) % obs code: L6L        (QZS)
        CODE_L8I (37) % obs code: E5abI      (GAL)
        CODE_L8Q (38) % obs code: E5abQ      (GAL)
        CODE_L8X (39) % obs code: E5abI+Q,B2abD+P (GAL,BDS)
        CODE_L2I (40) % obs code: B1_2I      (BDS)
        CODE_L2Q (41) % obs code: B1_2Q      (BDS)
        CODE_L6I (42) % obs code: B3I        (BDS)
        CODE_L6Q (43) % obs code: B3Q        (BDS)
        CODE_L3I (44) % obs code: G3I        (GLO)
        CODE_L3Q (45) % obs code: G3Q        (GLO)
        CODE_L3X (46) % obs code: G3I+Q      (GLO)
        CODE_L1I (47) % obs code: B1I        (BDS) (obsolute)
        CODE_L1Q (48) % obs code: B1Q        (BDS) (obsolute)
        CODE_L5A (49) % obs code: L5A SPS    (IRN)
        CODE_L5B (50) % obs code: L5B RS(D)  (IRN)
        CODE_L5C (51) % obs code: L5C RS(P)  (IRN)
        CODE_L9A (52) % obs code: SA SPS     (IRN)
        CODE_L9B (53) % obs code: SB RS(D)   (IRN)
        CODE_L9C (54) % obs code: SC RS(P)   (IRN)
        CODE_L9X (55) % obs code: SB+C       (IRN)
        CODE_L1D (56) % obs code: B1D        (BDS)
        CODE_L5D (57) % obs code: L5D(L5S),B2aD (QZS,BDS)
        CODE_L5P (58) % obs code: L5P(L5S),B2aP (QZS,BDS)
        CODE_L5Z (59) % obs code: L5D+P(L5S) (QZS)
        CODE_L6E (60) % obs code: L6E        (QZS)
        CODE_L7D (61) % obs code: B2bD       (BDS)
        CODE_L7P (62) % obs code: B2bP       (BDS)
        CODE_L7Z (63) % obs code: B2bD+P     (BDS)
        CODE_L8D (64) % obs code: B2abD      (BDS)
        CODE_L8P (65) % obs code: B2abP      (BDS)
        CODE_L4A (66) % obs code: G1aL1OCd   (GLO)
        CODE_L4B (67) % obs code: G1aL1OCd   (GLO)
        CODE_L4X (68) % obs code: G1al1OCd+p (GLO)
        MAXCODE  (68) % max number of obs code
    end
end